home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Texty / crackme / Nullz Crackme 1.1 3-5.txt < prev    next >
Encoding:
Text File  |  1999-03-04  |  3.9 KB  |  110 lines

  1. Type:   Newbie[X] - Semi-Newbie[ ] - Normal[ ] - Advanced[ ]
  2.  
  3. Hello all...
  4.  
  5. I'm back again with the third tutorial for >>nulltz<< CrackMe...
  6.  
  7. This level aint much harder then the second one. Only a slight change in the
  8. protection scheme.
  9.  
  10. But enough talk, lets go cracking...:)
  11.  
  12. Taget    : CrackMe Version 1.1 (Registration Type: 3)
  13. Get it at: http://members.xoom.com/nullz/
  14. Tools    : Softice 3.0 or higher
  15.  
  16. here we go...
  17.  
  18. Start the CrackMe, goto level 3, and take a look at it...
  19. Hmm, a Name/Code registration type.
  20. Remember the last two levels ? We used GetDlgItemTextA both times,
  21. so why not try again ?..:)
  22.  
  23. so:
  24.  
  25. -Put breakpoint at GetDlgItemTextA (BPX GetDlgItemTextA)
  26.  
  27. -Press the OK button
  28.  
  29. -MAN!...nothing happens...hmm, GetDlgItemTextA doesnt work then.
  30.  
  31. -Let try another good one...GetWindowTextA
  32.  
  33. -So, put a breakpoint on GetWindowTextA (BPX GetWindowTextA)
  34.  
  35. -Try the OK button again, and let's see what happens.
  36.  
  37. -Ahh, much better. The program breaked, now press F11 to get out of the CALL.
  38.  
  39. -You are now inside MFC42.DLL, we dont want to be there, so trace a little
  40.  by using F10. After a short while of stepping, you will be inside CRACME.EXE.
  41.  
  42. -Step a little further, and take a look what happens, you will see a code looking
  43.  like this:
  44.  
  45. :00401CB3 0FBE5C0500              movsx ebx, byte ptr [ebp+eax] <--- Move char from your
  46. :00401CB8 8D4C0500                lea ecx, dword ptr [ebp+eax]       name into ECX.
  47. :00401CBC 03F3                    add esi, ebx                   
  48. :00401CBE 8BD8                    mov ebx, eax                  <--- Rest is calculation
  49. :00401CC0 C1E308                  shl ebx, 08
  50. :00401CC3 33F3                    xor esi, ebx
  51. :00401CC5 8B5C241C                mov ebx, dword ptr [esp+1C]
  52. :00401CC9 03D9                    add ebx, ecx
  53. :00401CCB 8BCF                    mov ecx, edi
  54. :00401CCD 0FAFF3                  imul esi, ebx
  55. :00401CD0 F7D1                    not ecx
  56. :00401CD2 0FAFF1                  imul esi, ecx
  57. :00401CD5 40                      inc eax
  58. :00401CD6 03FA                    add edi, edx
  59. :00401CD8 3BC2                    cmp eax, edx                   <--- Are we done ?
  60. :00401CDA 7CD7                    jl 00401CB3                    <--- No? then go on
  61.  
  62.  
  63. -This is the routine, that calculates your registration code out from your Username,
  64.  but that is not what we are looking for, we are looking for the serial...
  65.  SO LETS GO FIND IT!
  66.  
  67. -Trace a little forward, to see if there is anything interesting, and wooops, what do we
  68.  see after a short while ?
  69.  
  70.  
  71. :00401CFD 8A10                    mov dl, byte ptr [eax]         <--- A char from your code
  72. :00401CFF 8ACA                    mov cl, dl                     <--- gets moved to cl
  73. :00401D01 3A16                    cmp dl, byte ptr [esi]         <--- The char from your
  74.                                                                       serial, gets compared
  75.                                                                       to a byte from the
  76.                                                                       REAL serial.
  77.  
  78. -Does it ring a bell to you ?...Well it does to me...
  79.  
  80. -So YOUR serial is on EAX while the CORRECT serial is in ESI
  81.  
  82. -Now try this: D EAX
  83.  You will see your own serial
  84.  
  85. -Now try: D ESI
  86.  and THERE we go...the CORRECT serial, write it down, clear all breakpoints,
  87.  exit SoftIce, write the serial in the Registration box, and BOOM, the congratulations
  88.  message pops up...
  89.  
  90. Congratulations, you've just passed Level 3....:)
  91.  
  92.  
  93. I hope you enjoyed the tutorial, if you have anything to invent, just catch me on 
  94. efNet or mail me at: einzteinius@Hotmail.com...
  95.  
  96.  
  97. Greets to: BiGMoM, MAK, Cruehead, Corn2, Recah, CrackZ, Quantum-Z, Quantico, Clown-Man,
  98.            Kanobi, J0b, LordByte, and ALL those people i might forgot...
  99.  
  100. If you think you're missing...just tell me, coz i've got an REAL bad memory....:-D
  101.  
  102.  
  103.  
  104. /EinZtein
  105.  
  106.  
  107.  
  108.  
  109.  
  110.